Добро пожаловать на урок 7, где мы знакомимся с передачей обучения. Этот метод включает повторное использование модели глубокого обучения, которая уже была обучена на огромном общем наборе данных (например, ImageNet), и адаптацию её для решения новой, специфической задачи (например, нашей задачи по классификации еды). Он необходим для достижения передовых результатов эффективно, особенно когда доступны ограниченные аннотированные данные.
1. Сила предварительно обученных весов
Глубокие нейронные сети учатся выделять признаки иерархически. Нижние слои усваивают фундаментальные понятия (края, углы, текстуры), а более глубокие слои объединяют их в сложные концепции (глаза, колеса, конкретные объекты). Ключевая идея заключается в том, что базовые признаки, изученные на ранних этапах, являются универсально применимымив большинстве визуальных областей.
Компоненты передачи обучения
- Исходная задача: Обучение на 14 миллионах изображений и 1000 категориях (например, ImageNet).
- Целевая задача: Адаптация весов для классификации значительно меньшего набора данных (например, наших конкретных классов для системы «FoodVision»).
- Используемый компонент: Огромное большинство параметров сети — слои извлечения признаков — используются напрямую.
Запустите код для просмотра активных тензоров
Размер входного признака должен соответствовать выходу замороженного базового слоя.
Размер: 512.
Размер выхода 512 — это вход, а количество классов 7 — это выход.
Код:
new_layer = torch.nn.Linear(512, 7)Размер выходного признака должен соответствовать числу целевых классов.
Размер: 7.